package y2015.date0916am.多线程聊天室.TcpServer;

import org.junit.jupiter.api.Test;

import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;

public class TcpServer {
    @Test
    public void main() throws Exception {
        int port = 9527;
        ServerSocket ss = null;

        //
        try {
            //			创建绑定到特定端口的服务器套接字
            ss = new ServerSocket(port);
            System.out.println("【系统】服务器成功启动在" + port + "端口！");
            // 循环接收客户端连接，并且通信
            while (true) {
                // 与客户端通信的对象（10086的人工客服）
                System.out.println("【系统】正在等待客户端连接 ... ...");
                Socket socket = ss.accept();
                System.out.println("【系统】客户端已经连接。");

                // 开启新的子级线程，用于与客户端进行通信
                // 子线程传入套接字socket
                new CommThread(socket).start();
            }

        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } finally {
            if (ss != null) {
                try {
                    ss.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }

        }
    }
}

